/**
 * LoftLoader jQuery Style
 * 
 * Plugin Name: LoftLoader jQuery
 * Plugin URI: http://www.loftocean.com/loftloader/loftloader-jquery/
 * Author: Kaylolo Yinxi Chen @Loft.Ocean
 * Author URI: http://www.loftocean.com
 * Description: LoftLoader jQuery is a plugin for adding beautiful and smooth preload animation to your website. Create a stunning loading screen, amuse and impress visitors while loading site content.
 * Version: 1.0.7
*/
@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-webkit-keyframes slideIn {
    0% {
        -webkit-transform: translate(-50%, 50vh);
    }
    100% {
        -webkit-transform: translate(-50%, -50%);
    }
}
@keyframes slideIn {
    0% {
        -ms-transform: translate(-50%, 50vh);
        transform: translate(-50%, 50vh);
    }
    100% {
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
    }
}
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
@-webkit-keyframes spinReturn {
    0% {
        -webkit-transform: rotate(0deg);
    }
    25% {
        -webkit-transform: rotate(225deg);
    }
    50% {
        -webkit-transform: rotate(180deg);
    }
    75% {
        -webkit-transform: rotate(405deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
    }
}
@keyframes spinReturn {
    0% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(225deg);
    }
    50% {
        transform: rotate(180deg);
    }
    75% {
        transform: rotate(405deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
@-webkit-keyframes lightUp {
    0% {
        opacity: 0.2;
    }
    40% {
        opacity: 1;
    }
    60% {
        opacity: 0.2;
    }
    100% {
        opacity: 0.2;
    }
}
@keyframes lightUp {
    0% {
        opacity: 0.2;
    }
    40% {
        opacity: 1;
    }
    60% {
        opacity: 0.2;
    }
    100% {
        opacity: 0.2;
    }
}
@-webkit-keyframes wave {
    0% {
        -webkit-transform: scaleY(1);
    }
    40% {
        -webkit-transform: scaleY(0.1);
    }
    80% {
        -webkit-transform: scaleY(1);
    }
    100% {
        -webkit-transform: scaleY(1);
    }
}
@keyframes wave {
    0% {
        transform: scaleY(1);
    }
    40% {
        transform: scaleY(0.1);
    }
    80% {
        transform: scaleY(1);
    }
    100% {
        transform: scaleY(1);
    }
}
@-webkit-keyframes drawframeTop {
    0% {
        -webkit-transform: scaleX(1);
        transform-origin: 100% 0%;
    }
    12.5% {
        -webkit-transform: scaleX(0);
        transform-origin: 100% 0%;
    }
    50% {
        -webkit-transform: scaleX(0);
        transform-origin: 0% 0%;
    }
    62.5% {
        -webkit-transform: scaleX(1);
        transform-origin: 0% 0%;
    }
    100% {
        -webkit-transform: scaleX(1);
        transform-origin: 100% 0%;
    }
}
@keyframes drawframeTop {
    0% {
        transform: scaleX(1);
        transform-origin: 100% 0%;
    }
    12.5% {
        transform: scaleX(0);
        transform-origin: 100% 0%;
    }
    50% {
        transform: scaleX(0);
        transform-origin: 0% 0%;
    }
    62.5% {
        transform: scaleX(1);
        transform-origin: 0% 0%;
    }
    100% {
        transform: scaleX(1);
        transform-origin: 100% 0%;
    }
}
@-webkit-keyframes drawframeBottom {
    0% {
        -webkit-transform: scaleX(1);
        transform-origin: 0% 0%;
    }
    12.5% {
        -webkit-transform: scaleX(0);
        transform-origin: 0% 0%;
    }
    50% {
        -webkit-transform: scaleX(0);
        transform-origin: 100% 0%;
    }
    62.5% {
        -webkit-transform: scaleX(1);
        transform-origin: 100% 0%;
    }
    100% {
        -webkit-transform: scaleX(1);
        transform-origin: 0% 0%;
    }
}
@keyframes drawframeBottom {
    0% {
        transform: scaleX(1);
        transform-origin: 0% 0%;
    }
    12.5% {
        transform: scaleX(0);
        transform-origin: 0% 0%;
    }
    50% {
        transform: scaleX(0);
        transform-origin: 100% 0%;
    }
    62.5% {
        transform: scaleX(1);
        transform-origin: 100% 0%;
    }
    100% {
        transform: scaleX(1);
        transform-origin: 0% 0%;
    }
}
@-webkit-keyframes drawframeRight {
    0% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 100%;
    }
    12.5% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 100%;
    }
    50% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 0%;
    }
    62.5% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 0%;
    }
    100% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 100%;
    }
}
@keyframes drawframeRight {
    0% {
        transform: scaleY(1);
        transform-origin: 0% 100%;
    }
    12.5% {
        transform: scaleY(0);
        transform-origin: 0% 100%;
    }
    50% {
        transform: scaleY(0);
        transform-origin: 0% 0%;
    }
    62.5% {
        transform: scaleY(1);
        transform-origin: 0% 0%;
    }
    100% {
        transform: scaleY(1);
        transform-origin: 0% 100%;
    }
}
@-webkit-keyframes drawframeLeft {
    0% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 0%;
    }
    12.5% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 0%;
    }
    50% {
        -webkit-transform: scaleY(0);
        transform-origin: 0% 100%;
    }
    62.5% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 100%;
    }
    100% {
        -webkit-transform: scaleY(1);
        transform-origin: 0% 0%;
    }
}
@keyframes drawframeLeft {
    0% {
        transform: scaleY(1);
        transform-origin: 0% 0%;
    }
    12.5% {
        transform: scaleY(0);
        transform-origin: 0% 0%;
    }
    50% {
        transform: scaleY(0);
        transform-origin: 0% 100%;
    }
    62.5% {
        transform: scaleY(1);
        transform-origin: 0% 100%;
    }
    100% {
        transform: scaleY(1);
        transform-origin: 0% 0%;
    }
}
@-webkit-keyframes imgLoading {
    0% {
        height: 0%;
        opacity: 1;
    }
    95% {
        height: 100%;
        opacity: 1;
    }
    100% {
        height: 100%;
        opacity: 0;
    }
}
@keyframes imgLoading {
    0% {
        height: 0%;
        opacity: 1;
    }
    95% {
        height: 100%;
        opacity: 1;
    }
    100% {
        height: 100%;
        opacity: 0;
    }
}
@-webkit-keyframes imgLoadingH {
    0% {
        width: 0%;
        opacity: 1;
    }
    95% {
        width: 100%;
        opacity: 1;
    }
    100% {
        width: 100%;
        opacity: 0;
    }
}
@keyframes imgLoadingH {
    0% {
        width: 0%;
        opacity: 1;
    }
    95% {
        width: 100%;
        opacity: 1;
    }
    100% {
        width: 100%;
        opacity: 0;
    }
}
@-webkit-keyframes imgRotate2d {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
    }
}
@keyframes imgRotate2d {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
@-webkit-keyframes imgRotate2dCounter {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(-360deg);
    }
}
@keyframes imgRotate2dCounter {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(-360deg);
    }
}
@-webkit-keyframes imgRotate3dY {
    0% {
        -webkit-transform: rotateY(0deg);
    }
    100% {
        -webkit-transform: rotateY(360deg);
    }
}
@keyframes imgRotate3dY {
    0% {
        transform: rotateY(0deg);
    }
    100% {
        transform: rotateY(360deg);
    }
}
@-webkit-keyframes imgRotate3dX {
    0% {
        -webkit-transform: rotateX(0deg);
    }
    100% {
        -webkit-transform: rotateX(360deg);
    }
}
@keyframes imgRotate3dX {
    0% {
        transform: rotateX(0deg);
    }
    100% {
        transform: rotateX(360deg);
    }
}
@-webkit-keyframes imgRotate2dEase {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(720deg);
    }
}
@keyframes imgRotate2dEase {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(720deg);
    }
}
@-webkit-keyframes imgRotate2dEaseCounter {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(-720deg);
    }
}
@keyframes imgRotate2dEaseCounter {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(-720deg);
    }
}
@-webkit-keyframes imgRotate3dYEase {
    0% {
        -webkit-transform: rotateY(0deg);
    }
    100% {
        -webkit-transform: rotateY(720deg);
    }
}
@keyframes imgRotate3dYEase {
    0% {
        transform: rotateY(0deg);
    }
    100% {
        transform: rotateY(720deg);
    }
}
@-webkit-keyframes imgRotate3dXEase {
    0% {
        -webkit-transform: rotateX(0deg);
    }
    100% {
        -webkit-transform: rotateX(720deg);
    }
}
@keyframes imgRotate3dXEase {
    0% {
        transform: rotateX(0deg);
    }
    100% {
        transform: rotateX(720deg);
    }
}
@-webkit-keyframes imgBounce {
    0% {
        -webkit-transform: translateY(0);
    }
    50% {
        -webkit-transform: translateY(-40%);
    }
}
@keyframes imgBounce {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-40%);
    }
}
@-webkit-keyframes imgBounceRoll {
    0% {
        -webkit-transform: translateY(0) rotate(0deg);
    }
    12.5% {
        -webkit-transform: translateY(-40%) rotate(45deg);
    }
    25% {
        -webkit-transform: translateY(0) rotate(90deg);
    }
    37.5% {
        -webkit-transform: translateY(-40%) rotate(135deg);
    }
    50% {
        -webkit-transform: translateY(0) rotate(180deg);
    }
    62.5% {
        -webkit-transform: translateY(-40%) rotate(225deg);
    }
    75% {
        -webkit-transform: translateY(0) rotate(270deg);
    }
    87.5% {
        -webkit-transform: translateY(-40%) rotate(315deg);
    }
    100% {
        -webkit-transform: translateY(0) rotate(360deg);
    }
}
@keyframes imgBounceRoll {
    0% {
        transform: translateY(0) rotate(0deg);
    }
    12.5% {
        transform: translateY(-40%) rotate(45deg);
    }
    25% {
        transform: translateY(0) rotate(90deg);
    }
    37.5% {
        transform: translateY(-40%) rotate(135deg);
    }
    50% {
        transform: translateY(0) rotate(180deg);
    }
    62.5% {
        transform: translateY(-40%) rotate(225deg);
    }
    75% {
        transform: translateY(0) rotate(270deg);
    }
    87.5% {
        transform: translateY(-40%) rotate(315deg);
    }
    100% {
        transform: translateY(0) rotate(360deg);
    }
}
@-webkit-keyframes imgShadow {
    0% {
        -webkit-transform: scale(0.6);
    }
    50% {
        -webkit-transform: scale(1);
        opacity: 0.05;
    }
    100% {
        -webkit-transform: scale(0.6);
    }
}
@keyframes imgShadow {
    0% {
        transform: scale(0.6);
    }
    50% {
        transform: scale(1);
        opacity: 0.05;
    }
    100% {
        transform: scale(0.6);
    }
}
@-webkit-keyframes imgShadowRoll {
    0% {
        -webkit-transform: scale(0.6);
    }
    12.5% {
        -webkit-transform: scale(1);
        opacity: 0.05;
    }
    25% {
        -webkit-transform: scale(0.6);
    }
    37.5% {
        -webkit-transform: scale(1);
        opacity: 0.05;
    }
    50% {
        -webkit-transform: scale(0.6);
    }
    62.5% {
        -webkit-transform: scale(1);
        opacity: 0.05;
    }
    75% {
        -webkit-transform: scale(0.6);
    }
    87.5% {
        -webkit-transform: scale(1);
        opacity: 0.05;
    }
    100% {
        -webkit-transform: scale(0.6);
    }
}
@keyframes imgShadowRoll {
    0% {
        transform: scale(0.6);
    }
    12.5% {
        transform: scale(1);
        opacity: 0.05;
    }
    25% {
        transform: scale(0.6);
    }
    37.5% {
        transform: scale(1);
        opacity: 0.05;
    }
    50% {
        transform: scale(0.6);
    }
    62.5% {
        transform: scale(1);
        opacity: 0.05;
    }
    75% {
        transform: scale(0.6);
    }
    87.5% {
        transform: scale(1);
        opacity: 0.05;
    }
    100% {
        transform: scale(0.6);
    }
}
@-webkit-keyframes crossingLeft {
    0% {
        -webkit-transform: translateX(-150%);
    }
    50% {
        -webkit-transform: translateX(150%);
    }
    100% {
        -webkit-transform: translateX(-150%);
    }
}
@keyframes crossingLeft {
    0% {
        transform: translateX(-150%);
    }
    50% {
        transform: translateX(150%);
    }
    100% {
        transform: translateX(-150%);
    }
}
@-webkit-keyframes crossingRight {
    0% {
        -webkit-transform: translateX(150%);
    }
    50% {
        -webkit-transform: translateX(-150%);
    }
    100% {
        -webkit-transform: translateX(150%);
    }
}
@keyframes crossingRight {
    0% {
        transform: translateX(150%);
    }
    50% {
        transform: translateX(-150%);
    }
    100% {
        transform: translateX(150%);
    }
}
@-webkit-keyframes ducks {
    0% {
        -webkit-transform: translateX(0);
    }
    100% {
        -webkit-transform: translateX(100%);
    }
}
@keyframes ducks {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(100%);
    }
}
@-webkit-keyframes duckHead {
    0% {
        -webkit-transform: translateX(0);
    }
    50% {
        -webkit-transform: translateX(3px);
    }
}
@keyframes duckHead {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(3px);
    }
}
@-webkit-keyframes rainbow {
    0% {
        -webkit-transform: rotate(-180deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
    }
}
@keyframes rainbow {
    0% {
        transform: rotate(-180deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
@-webkit-keyframes circlefill {
    0% {
        -webkit-transform: scaleY(0);
    }
    100% {
        -webkit-transform: scaleY(1);
    }
}
@keyframes circlefill {
    0% {
        transform: scaleY(0);
    }
    100% {
        transform: scaleY(1);
    }
}
@-webkit-keyframes waterup {
    0% {
        -webkit-transform: translateX(0);
    }
    50% {
        -webkit-transform: translateX(75%);
    }
}
@keyframes waterup {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(75%);
    }
}
@-webkit-keyframes waterupfill {
    0% {
        -webkit-transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(0);
    }
}
@keyframes waterupfill {
    0% {
        transform: translateY(-100%);
    }
    100% {
        transform: translateY(0);
    }
}
@-webkit-keyframes bubbles {
    0% {
        -webkit-transform: translateY(0);
    }
    100% {
        -webkit-transform: translateY(100px);
    }
}
@keyframes bubbles {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(100px);
    }
}
@-webkit-keyframes crystal {
    0% {
        -webkit-transform: rotate(0) scale(1);
    }
    50% {
        -webkit-transform: rotate(180deg) scale(0.75);
    }
    100% {
        -webkit-transform: rotate(360deg) scale(1);
    }
}
@keyframes crystal {
    0% {
        transform: rotate(0) scale(1);
    }
    50% {
        transform: rotate(180deg) scale(0.75);
    }
    100% {
        transform: rotate(360deg) scale(1);
    }
}
@-webkit-keyframes petals {
    0% {
        box-shadow: 0 -15px 0 -15px transparent,
            10.5px -10.5px 0 -15px transparent, 15px 0 0 -15px transparent,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    12.5% {
        box-shadow: 0 -25px 0 -15px currentColor,
            10.5px -10.5px 0 -15px transparent, 15px 0 0 -15px transparent,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    25% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 15px 0 0 -15px transparent,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    37.5% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    50% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    62.5% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    75% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    87.5% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -25px 0 0 -15px currentColor,
            -10.5px -10.5px 0 -15px transparent;
    }
    100% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -25px 0 0 -15px currentColor,
            -17.5px -17.5px 0 -15px currentColor;
    }
}
@keyframes petals {
    0% {
        box-shadow: 0 -15px 0 -15px transparent,
            10.5px -10.5px 0 -15px transparent, 15px 0 0 -15px transparent,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    11% {
        box-shadow: 0 -25px 0 -15px currentColor,
            10.5px -10.5px 0 -15px transparent, 15px 0 0 -15px transparent,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    22% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 15px 0 0 -15px transparent,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    33% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            10.5px 10.5px 0 -15px transparent, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    44% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 15px 0 -15px transparent,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    55% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -10.5px 10.5px 0 -15px transparent, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    66% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -15px 0 0 -15px transparent,
            -10.5px -10.5px 0 -15px transparent;
    }
    77% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -25px 0 0 -15px currentColor,
            -10.5px -10.5px 0 -15px transparent;
    }
    88% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -25px 0 0 -15px currentColor,
            -17.5px -17.5px 0 -15px currentColor;
    }
    100% {
        box-shadow: 0 -25px 0 -15px currentColor,
            17.5px -17.5px 0 -15px currentColor, 25px 0 0 -15px currentColor,
            17.5px 17.5px 0 -15px currentColor, 0 25px 0 -15px currentColor,
            -17.5px 17.5px 0 -15px currentColor, -25px 0 0 -15px currentColor,
            -17.5px -17.5px 0 -15px currentColor;
    }
}
@-webkit-keyframes beat {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    80% {
        transform: scale(1);
        opacity: 0.7;
    }
    100% {
        transform: scale(1);
        opacity: 0;
    }
}
@keyframes beat {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    80% {
        transform: scale(1);
        opacity: 0.7;
    }
    100% {
        transform: scale(1);
        opacity: 0;
    }
}
@-webkit-keyframes imgFade {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes imgFade {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-webkit-keyframes endBgShrinkFade {
    0% {
        transform: translateZ(0);
        opacity: 1;
    }
    50% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    70% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    100% {
        transform: translateZ(-120px);
        opacity: 0;
    }
}
@keyframes endBgShrinkFade {
    0% {
        transform: translateZ(0);
        opacity: 1;
    }
    50% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    70% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    100% {
        transform: translateZ(-120px);
        opacity: 0;
    }
}
@-webkit-keyframes bgShrinkFade {
    0% {
        transform: translateZ(-120px);
        opacity: 0;
    }
    50% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    70% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    100% {
        transform: translateZ(0);
        opacity: 1;
    }
}
@keyframes bgShrinkFade {
    0% {
        transform: translateZ(-120px);
        opacity: 0;
    }
    50% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    70% {
        transform: translateZ(-120px);
        opacity: 1;
    }
    100% {
        transform: translateZ(0);
        opacity: 1;
    }
}
html,
body {
    opacity: 1 !important;
}

#loftloader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    z-index: 9999999;
    width: 100%;
    height: 100%;
    background: transparent !important;
}
#loftloader-wrapper.bgnone {
    pointer-events: none;
}
.loaded #loftloader-wrapper {
    -webkit-transform: translateX(-200%);
    -ms-transform: translateX(-200%);
    transform: translateX(-200%);
    visibility: hidden;
    pointer-events: none;
    transition: all;
    transition-delay: 1s;
}
.loaded #loftloader-wrapper.slide-vertical {
    -webkit-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
}
.loaded #loftloader-wrapper #loader,
.loaded #loftloader-wrapper span.bar,
.loaded #loftloader-wrapper span.percentage,
.loaded #loftloader-wrapper .loader-message,
.loaded #loftloader-wrapper .loader-close-button {
    opacity: 0;
    transition: all 0.3s ease-out;
}
.loaded #loftloader-wrapper.inner-end-up .loader-inner {
    -webkit-transform: translate(-50%, -100vh);
    -ms-transform: translate(-50%, -100vh);
    transform: translate(-50%, -100vh);
    transition: transform 0.7s ease-out;
}
.loaded #loftloader-wrapper.inner-end-up .loader-inner #loader,
.loaded #loftloader-wrapper.inner-end-up .loader-inner span.bar,
.loaded #loftloader-wrapper.inner-end-up .loader-inner span.percentage,
.loaded #loftloader-wrapper.inner-end-up .loader-inner .loader-message {
    opacity: 1;
}
#loftloader-wrapper .loader-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1001;
    text-align: center;
    transition: all 0s;
    font-size: 0;
}
#loftloader-wrapper .loader-inner #loader {
    position: relative;
    z-index: 1002;
    display: inline-block;
    margin: 0 auto;
    color: #248acc;
}
#loftloader-wrapper .loader-inner #loader img {
    max-width: 100%;
    height: auto;
}
#loftloader-wrapper .loader-inner .with-percentage {
    position: relative;
}
#loftloader-wrapper.inner-enter-fade .loader-inner {
    -webkit-animation: fadeIn 0.7s ease-in 1;
    animation: fadeIn 0.7s ease-in 1;
}
#loftloader-wrapper.inner-enter-up .loader-inner {
    -webkit-animation: slideIn 0.7s ease-in 1;
    animation: slideIn 0.7s ease-in 1;
}
#loftloader-wrapper .loader-bg {
    position: fixed;
    top: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    opacity: 0.9;
}
#loftloader-wrapper.end-split-h .loader-bg:before,
#loftloader-wrapper.end-split-h .loader-bg:after {
    position: absolute;
    top: 0;
    display: block;
    width: 50%;
    height: 100%;
    background-color: #fff;
    background-size: 200% 100%;
    content: "";
    transition: all 0s;
    will-change: transform;
}
#loftloader-wrapper.end-split-h .loader-bg:before {
    left: 0;
    background-position: 0 0;
}
#loftloader-wrapper.end-split-h .loader-bg:after {
    right: 0;
    background-position: 100% 0;
}
.loaded #loftloader-wrapper.end-split-h .loader-bg:before,
.loaded #loftloader-wrapper.end-split-h .loader-bg:after {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded #loftloader-wrapper.end-split-h .loader-bg:before {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
}
.loaded #loftloader-wrapper.end-split-h .loader-bg:after {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
}
.loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:before,
.loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:after {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:before {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}
.loaded.leaves #loftloader-wrapper.end-split-h .loader-bg:after {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}
#loftloader-wrapper.end-split-v .loader-bg:before,
#loftloader-wrapper.end-split-v .loader-bg:after {
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 50%;
    background-color: #fff;
    background-size: 100% 200%;
    content: "";
    transition: all 0s;
    will-change: transform;
}
#loftloader-wrapper.end-split-v .loader-bg:before {
    top: 0;
    background-position: 0 0;
}
#loftloader-wrapper.end-split-v .loader-bg:after {
    bottom: 0;
    background-position: 0 100%;
}
.loaded #loftloader-wrapper.end-split-v .loader-bg:before,
.loaded #loftloader-wrapper.end-split-v .loader-bg:after {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded #loftloader-wrapper.end-split-v .loader-bg:before {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}
.loaded #loftloader-wrapper.end-split-v .loader-bg:after {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
}
.loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:before,
.loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:after {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:before {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
.loaded.leaves #loftloader-wrapper.end-split-v .loader-bg:after {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
#loftloader-wrapper.end-fade .loader-bg {
    background-color: #fff;
    will-change: opacity;
}
.loaded #loftloader-wrapper.end-fade .loader-bg {
    opacity: 0 !important;
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded.leaves #loftloader-wrapper.end-fade .loader-bg {
    opacity: 1 !important;
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
#loftloader-wrapper.end-up .loader-bg {
    background-color: #fff;
    will-change: transform;
}
.loaded #loftloader-wrapper.end-up .loader-bg {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded.leaves #loftloader-wrapper.end-up .loader-bg {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
#loftloader-wrapper.end-shrink-fade .loader-bg {
    perspective: 1000px;
}
#loftloader-wrapper.end-shrink-fade .loader-bg:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    will-change: transform, opacity;
    transform-style: preserve-3d;
}
.loaded #loftloader-wrapper.end-shrink-fade .loader-bg:before {
    -webkit-animation: endBgShrinkFade 0.7s linear 0.3s 1;
    animation: endBgShrinkFade 0.7s linear 0.3s 1;
}
.loaded.leaves #loftloader-wrapper.end-shrink-fade .loader-bg:before {
    -webkit-animation: bgShrinkFade 0.5s linear 0s 1;
    animation: bgShrinkFade 0.5s linear 0s 1;
}
#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before,
#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    will-change: transform, height;
}
#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg.bg-img:before,
#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg.bg-img:after {
    background-attachment: fixed !important;
    background-position: 50% 50% !important;
}
#loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    top: auto;
    bottom: 0;
}
.loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before,
.loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
    height: 0;
}
.loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    transform: translateY(-100px);
}
.loaded #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    -webkit-transform: translateY(100px);
    -ms-transform: translateY(100px);
    transform: translateY(100px);
}
.loaded.leaves #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:before,
.loaded.leaves #loftloader-wrapper.end-split-h.split-reveal-v .loader-bg:after {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    height: 100%;
}
#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before,
#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    will-change: transform, width;
}
#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg.bg-img:before,
#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg.bg-img:after {
    background-attachment: fixed !important;
    background-position: 50% 50% !important;
}
#loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    right: 0;
    left: auto;
}
.loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before,
.loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
    width: 0;
}
.loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before {
    -webkit-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    transform: translateX(-100px);
}
.loaded #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    -webkit-transform: translateX(100px);
    -ms-transform: translateX(100px);
    transform: translateX(100px);
}
.loaded.leaves #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:before,
.loaded.leaves #loftloader-wrapper.end-split-v.split-reveal-h .loader-bg:after {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 100%;
}
#loftloader-wrapper.split-diagonally .loader-bg:before,
#loftloader-wrapper.split-diagonally .loader-bg:after {
    opacity: 0;
}
.loaded #loftloader-wrapper.split-diagonally .loader-bg:before,
.loaded #loftloader-wrapper.split-diagonally .loader-bg:after {
    opacity: 1;
    transition: transform 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),
        opacity 0s 0s;
}
#loftloader-wrapper.split-diagonally .loader-bg.bg-img.pattern {
    background-position: 50% 50%;
}
#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:before,
#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:after {
    width: 100%;
    background-size: 100% 100%;
}
#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:before {
    -webkit-clip-path: polygon(0% 0%, 55% 0%, 45% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 55% 0%, 45% 100%, 0% 100%);
}
#loftloader-wrapper.split-diagonally.end-split-h .loader-bg:after {
    -webkit-clip-path: polygon(55% 0%, 100% 0%, 100% 100%, 45% 100%);
    clip-path: polygon(55% 0%, 100% 0%, 100% 100%, 45% 100%);
}
#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:before,
#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:after {
    height: 100%;
    background-size: 100% 100%;
}
#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:before {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 60%, 0% 40%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 60%, 0% 40%);
}
#loftloader-wrapper.split-diagonally.end-split-v .loader-bg:after {
    -webkit-clip-path: polygon(0% 40%, 100% 60%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 40%, 100% 60%, 100% 100%, 0% 100%);
}
.leaves #loftloader-wrapper {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}
#loftloader-wrapper.end-split-h .loader-bg.bg-img.full:before,
#loftloader-wrapper.end-split-h .loader-bg.bg-img.full:after,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.full:before,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.full:after,
#loftloader-wrapper.end-fade .loader-bg.bg-img.full,
#loftloader-wrapper.end-up .loader-bg.bg-img.full,
#loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.full:before,
#loftloader-wrapper.split-diagonally .loader-bg.bg-img.full {
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}
#loftloader-wrapper.end-split-h .loader-bg.bg-img.full.bg-contain:before,
#loftloader-wrapper.end-split-h .loader-bg.bg-img.full.bg-contain:after,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.full.bg-contain:before,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.full.bg-contain:after,
#loftloader-wrapper.end-fade .loader-bg.bg-img.full.bg-contain,
#loftloader-wrapper.end-up .loader-bg.bg-img.full.bg-contain,
#loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.full.bg-contain:before,
#loftloader-wrapper.split-diagonally .loader-bg.bg-img.full.bg-contain {
    background-size: contain;
}
#loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:before,
#loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:after,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:before,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:after,
#loftloader-wrapper.end-fade .loader-bg.bg-img.pattern,
#loftloader-wrapper.end-up .loader-bg.bg-img.pattern,
#loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.pattern:before,
#loftloader-wrapper.split-diagonally .loader-bg.bg-img.pattern {
    background-size: auto;
    background-repeat: repeat;
}
#loftloader-wrapper.end-fade .loader-bg.bg-img.pattern,
#loftloader-wrapper.end-up .loader-bg.bg-img.pattern,
#loftloader-wrapper.end-shrink-fade .loader-bg.bg-img.pattern:before {
    background-position: 50% 50%;
}
#loftloader-wrapper.split-diagonally.end-split-h
    .loader-bg.bg-img.pattern:before,
#loftloader-wrapper.split-diagonally.end-split-h
    .loader-bg.bg-img.pattern:after,
#loftloader-wrapper.split-diagonally.end-split-v
    .loader-bg.bg-img.pattern:before,
#loftloader-wrapper.split-diagonally.end-split-v
    .loader-bg.bg-img.pattern:after {
    background-position: 50% 50%;
}
#loftloader-wrapper.end-split-h .loader-bg.bg-img.full:before,
#loftloader-wrapper.end-split-h .loader-bg.bg-img.full:after {
    background-attachment: fixed;
}
#loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:before {
    background-position: 100% 50%;
}
#loftloader-wrapper.end-split-h .loader-bg.bg-img.pattern:after {
    background-position: 0 50%;
}
#loftloader-wrapper.end-split-v .loader-bg.bg-img.full:before,
#loftloader-wrapper.end-split-v .loader-bg.bg-img.full:after {
    background-attachment: fixed;
}
#loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:before {
    background-position: 50% 100%;
}
#loftloader-wrapper.end-split-v .loader-bg.bg-img.pattern:after {
    background-position: 50% 0;
}
#loftloader-wrapper.mobile.end-split-h .loader-bg.bg-img.full:before,
#loftloader-wrapper.mobile.end-split-h .loader-bg.bg-img.full:after,
#loftloader-wrapper.mobile.end-split-v .loader-bg.bg-img.full:before,
#loftloader-wrapper.mobile.end-split-v .loader-bg.bg-img.full:after {
    display: none;
}
#loftloader-wrapper.mobile.end-split-h .loader-bg.bg-img.full .loader-bg-half,
#loftloader-wrapper.mobile.end-split-v .loader-bg.bg-img.full .loader-bg-half {
    position: absolute;
    display: block;
    transition: all 0s;
    will-change: transform;
    overflow: hidden;
}
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:before,
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:before {
    position: absolute;
    display: block;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    content: "";
}
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full.bg-contain
    .loader-bg-half:before,
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full.bg-contain
    .loader-bg-half:before {
    background-size: contain;
}
#loftloader-wrapper.mobile.end-split-h .loader-bg.bg-img.full .loader-bg-half {
    top: 0;
    width: 50%;
    height: 100%;
}
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:before {
    top: 0;
    width: 200%;
    height: 100%;
}
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:first-child,
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:first-child:before {
    left: 0;
}
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:last-child,
#loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:last-child:before {
    right: 0;
}
.loaded
    #loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded
    #loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:first-child {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
}
.loaded
    #loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:last-child {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:first-child {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-h
    .loader-bg.bg-img.full
    .loader-bg-half:last-child {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}
#loftloader-wrapper.mobile.end-split-v .loader-bg.bg-img.full .loader-bg-half {
    left: 0;
    width: 100%;
    height: 50%;
}
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:before {
    left: 0;
    width: 100%;
    height: 200%;
}
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:first-child,
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:first-child:before {
    top: 0;
}
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:last-child,
#loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:last-child:before {
    bottom: 0;
}
.loaded
    #loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded
    #loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:first-child {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}
.loaded
    #loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:last-child {
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:first-child {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-v
    .loader-bg.bg-img.full
    .loader-bg-half:last-child {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v .loader-bg.bg-img:before,
#loftloader-wrapper.mobile.end-split-h.split-reveal-v .loader-bg.bg-img:after,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h .loader-bg.bg-img:before,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h .loader-bg.bg-img:after {
    display: none;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half {
    position: absolute;
    display: block;
    transition: all 0s;
    overflow: hidden;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:before,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:before {
    position: absolute;
    display: block;
    content: "";
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img.full
    .loader-bg-half:before,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img.full
    .loader-bg-half:before {
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img.full.bg-contain
    .loader-bg-half:before,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img.full.bg-contain
    .loader-bg-half:before {
    background-size: contain;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img.pattern
    .loader-bg-half:before,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img.pattern
    .loader-bg-half:before {
    background-size: auto;
    background-position: 50% 50%;
    background-repeat: repeat;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half {
    top: 0;
    width: 50%;
    height: 100%;
    will-change: transform, height;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:before {
    top: 0;
    width: 100vw;
    height: 100vh;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:first-child,
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:first-child:before {
    left: 0;
}
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:last-child,
#loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:last-child:before {
    top: auto;
    right: 0;
    bottom: 0;
}
.loaded
    #loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
    height: 0;
}
.loaded
    #loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:first-child {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    transform: translateY(-100px);
}
.loaded
    #loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half:last-child {
    -webkit-transform: translateY(100px);
    -ms-transform: translateY(100px);
    transform: translateY(100px);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-h.split-reveal-v
    .loader-bg.bg-img
    .loader-bg-half {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
    transform: none !important;
    height: 100%;
}
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half {
    left: 0;
    width: 100%;
    height: 50%;
    will-change: transform, width;
}
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:before {
    left: 0;
    width: 100vw;
    height: 100vh;
}
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:first-child,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:first-child:before {
    top: 0;
}
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:last-child,
#loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:last-child:before {
    right: 0;
    bottom: 0;
    left: auto;
}
.loaded
    #loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half {
    transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
    width: 0;
}
.loaded
    #loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:first-child {
    -webkit-transform: translateX(-100px);
    -ms-transform: translateX(-100px);
    transform: translateX(-100px);
}
.loaded
    #loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half:last-child {
    -webkit-transform: translateX(100px);
    -ms-transform: translateX(100px);
    transform: translateX(100px);
}
.loaded.leaves
    #loftloader-wrapper.mobile.end-split-v.split-reveal-h
    .loader-bg.bg-img
    .loader-bg-half {
    transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
    transform: none !important;
    width: 100%;
}
.loaded
    #loftloader-wrapper.mobile.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half {
    transition: transform 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
#loftloader-wrapper.mobile.end-split-h.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half {
    width: 100%;
}
#loftloader-wrapper.mobile.end-split-h.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half:before {
    width: 100%;
}
#loftloader-wrapper.mobile.end-split-h.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half:first-child {
    -webkit-clip-path: polygon(0% 0%, 55% 0%, 45% 100%, 0% 100%);
    clip-path: polygon(0% 0%, 55% 0%, 45% 100%, 0% 100%);
}
#loftloader-wrapper.mobile.end-split-h.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half:last-child {
    -webkit-clip-path: polygon(55% 0%, 100% 0%, 100% 100%, 45% 100%);
    clip-path: polygon(55% 0%, 100% 0%, 100% 100%, 45% 100%);
}
#loftloader-wrapper.mobile.end-split-v.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half {
    height: 100%;
}
#loftloader-wrapper.mobile.end-split-v.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half:before {
    height: 100%;
}
#loftloader-wrapper.mobile.end-split-v.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half:first-child {
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 60%, 0% 40%);
    clip-path: polygon(0% 0%, 100% 0%, 100% 60%, 0% 40%);
}
#loftloader-wrapper.mobile.end-split-v.split-diagonally
    .loader-bg.bg-img.full
    .loader-bg-half:last-child {
    -webkit-clip-path: polygon(0% 40%, 100% 60%, 100% 100%, 0% 100%);
    clip-path: polygon(0% 40%, 100% 60%, 100% 100%, 0% 100%);
}

/* ==========================================================================
   Loading - Spinning Sun
   ========================================================================== */
#loftloader-wrapper.pl-sun #loader {
    width: 50px;
    height: 50px;
}
#loftloader-wrapper.pl-sun #loader span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 50px;
    height: 50px;
    background: currentColor;
    opacity: 0.9;
    transform-origin: 50% 50%;
    -webkit-animation: spinReturn 4s ease infinite;
    animation: spinReturn 4s ease infinite;
}
#loftloader-wrapper.pl-sun #loader span:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: inherit;
    opacity: 0.9;
    content: "";
    transform-origin: 50% 50%;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* ==========================================================================
   Loading - Luminous Circles
   ========================================================================== */
#loftloader-wrapper.pl-luminous #loader {
    width: 100px;
    height: 60px;
}
#loftloader-wrapper.pl-luminous #loader span,
#loftloader-wrapper.pl-luminous #loader:before,
#loftloader-wrapper.pl-luminous #loader:after {
    position: absolute;
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    opacity: 0.2;
    background: currentColor;
}
#loftloader-wrapper.pl-luminous #loader span {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-animation: lightUp 1.5s linear infinite 0.5s;
    animation: lightUp 1.5s linear infinite 0.5s;
}
#loftloader-wrapper.pl-luminous #loader:before,
#loftloader-wrapper.pl-luminous #loader:after {
    content: "";
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}
#loftloader-wrapper.pl-luminous #loader:before {
    left: 0;
    -webkit-animation: lightUp 1.5s linear infinite;
    animation: lightUp 1.5s linear infinite;
}
#loftloader-wrapper.pl-luminous #loader:after {
    right: 0;
    -webkit-animation: lightUp 1.5s linear infinite 1s;
    animation: lightUp 1.5s linear infinite 1s;
}

/* ==========================================================================
   Loading - Wave
   ========================================================================== */
#loftloader-wrapper.pl-wave #loader {
    width: 60px;
    height: 30px;
}
#loftloader-wrapper.pl-wave #loader span,
#loftloader-wrapper.pl-wave #loader:before,
#loftloader-wrapper.pl-wave #loader:after {
    position: relative;
    display: inline-block;
    width: 6px;
    height: 100%;
    background: currentColor;
}
#loftloader-wrapper.pl-wave #loader span {
    margin: 0 16px;
    -webkit-animation: wave 0.9s linear infinite 0.3s;
    animation: wave 0.9s linear infinite 0.3s;
}
#loftloader-wrapper.pl-wave #loader:before,
#loftloader-wrapper.pl-wave #loader:after {
    content: "";
}
#loftloader-wrapper.pl-wave #loader:before {
    -webkit-animation: wave 0.9s linear infinite;
    animation: wave 0.9s linear infinite;
}
#loftloader-wrapper.pl-wave #loader:after {
    -webkit-animation: wave 0.9s linear infinite 0.6s;
    animation: wave 0.9s linear infinite 0.6s;
}

/* ==========================================================================
   Loading - Spinning Square
   ========================================================================== */
#loftloader-wrapper.pl-square #loader {
    width: 50px;
    height: 50px;
    transform-origin: 50% 50%;
    -webkit-animation: spinReturn 4s ease infinite;
    animation: spinReturn 4s ease infinite;
}
#loftloader-wrapper.pl-square #loader span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 4px solid currentColor;
    box-sizing: border-box;
    transform-origin: 50% 50%;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* ==========================================================================
   Loading - Drawing Frame
   ========================================================================== */
#loftloader-wrapper.pl-frame #loader {
    width: 80px;
    height: 80px;
    max-width: 90vw;
}
#loftloader-wrapper.pl-frame #loader:before,
#loftloader-wrapper.pl-frame #loader:after {
    position: absolute;
    width: 100%;
    height: 4px;
    background: currentColor;
    content: "";
}
#loftloader-wrapper.pl-frame #loader:before {
    top: 0;
    right: 0;
    left: auto;
    -webkit-animation: drawframeTop 4s linear infinite;
    animation: drawframeTop 4s linear infinite;
}
#loftloader-wrapper.pl-frame #loader:after {
    right: auto;
    bottom: 0;
    left: 0;
    -webkit-animation: drawframeBottom 4s linear infinite 1s;
    animation: drawframeBottom 4s linear infinite 1s;
}
#loftloader-wrapper.pl-frame #loader span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
}
#loftloader-wrapper.pl-frame #loader span:before,
#loftloader-wrapper.pl-frame #loader span:after {
    position: absolute;
    width: 4px;
    height: 100%;
    background: currentColor;
    content: "";
}
#loftloader-wrapper.pl-frame #loader span:before {
    top: auto;
    right: 0;
    bottom: 0;
    -webkit-animation: drawframeRight 4s linear infinite 0.5s;
    animation: drawframeRight 4s linear infinite 0.5s;
}
#loftloader-wrapper.pl-frame #loader span:after {
    top: 0;
    bottom: auto;
    left: 0;
    -webkit-animation: drawframeLeft 4s linear infinite 1.5s;
    animation: drawframeLeft 4s linear infinite 1.5s;
}
#loftloader-wrapper.pl-frame #loader img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: block;
    max-width: 80%;
    max-height: 80%;
}

/* ==========================================================================
   Loading - Loading Custom Image
   ========================================================================== */
#loftloader-wrapper.pl-imgloading #loader {
    width: auto;
    height: auto;
}
#loftloader-wrapper.pl-imgloading #loader img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
#loftloader-wrapper.pl-imgloading #loader img {
    opacity: 0.3;
}
#loftloader-wrapper.pl-imgloading #loader .imgloading-container {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 3;
    display: block;
    width: 100%;
    height: 100%;
    transition: 0s;
    overflow: hidden;
}
#loftloader-wrapper.pl-imgloading #loader span {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 3;
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    transition: 0s;
}
#loftloader-wrapper.pl-imgloading.vertical #loader .imgloading-container {
    width: 100%;
    height: 0%;
    -webkit-animation: imgLoading 6s linear infinite;
    animation: imgLoading 6s linear infinite;
    will-change: height, opacity;
    transform-origin: 0 100%;
}
#loftloader-wrapper.pl-imgloading.vertical.top-to-bottom
    #loader
    .imgloading-container {
    top: 0;
    bottom: auto;
    transform-origin: 0 0;
}
#loftloader-wrapper.pl-imgloading.vertical.top-to-bottom
    #loader
    .imgloading-container
    span {
    top: 0;
    bottom: auto;
}
#loftloader-wrapper.pl-imgloading.horizontal #loader .imgloading-container {
    width: 0%;
    height: 100%;
    -webkit-animation: imgLoadingH 6s linear infinite;
    animation: imgLoadingH 6s linear infinite;
    will-change: width, opacity;
    transform-origin: 0 0;
}

/* ==========================================================================
   Loading - Rotating Custom Image
   ========================================================================== */
#loftloader-wrapper.pl-imgrotating #loader {
    width: auto;
    height: auto;
    backface-visibility: visible;
    transform-style: preserve-3d;
}
#loftloader-wrapper.pl-imgrotating #loader img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
#loftloader-wrapper.pl-imgrotating.twod #loader {
    -webkit-animation: imgRotate2d 4s linear infinite;
    animation: imgRotate2d 4s linear infinite;
}
#loftloader-wrapper.pl-imgrotating.twod.counterclockwise #loader {
    -webkit-animation: imgRotate2dCounter 4s linear infinite;
    animation: imgRotate2dCounter 4s linear infinite;
}
#loftloader-wrapper.pl-imgrotating.threed-y #loader {
    -webkit-animation: imgRotate3dY 4s linear infinite;
    animation: imgRotate3dY 4s linear infinite;
}
#loftloader-wrapper.pl-imgrotating.threed-x #loader {
    -webkit-animation: imgRotate3dX 4s linear infinite;
    animation: imgRotate3dX 4s linear infinite;
}
#loftloader-wrapper.pl-imgrotating.ease-back.twod #loader {
    -webkit-animation: imgRotate2dEase 4s cubic-bezier(0.07, 0.29, 0.63, 1.55)
        infinite;
    animation: imgRotate2dEase 4s cubic-bezier(0.07, 0.29, 0.63, 1.55) infinite;
}
#loftloader-wrapper.pl-imgrotating.ease-back.twod.counterclockwise #loader {
    -webkit-animation: imgRotate2dEaseCounter 4s
        cubic-bezier(0.07, 0.29, 0.63, 1.55) infinite;
    animation: imgRotate2dEaseCounter 4s cubic-bezier(0.07, 0.29, 0.63, 1.55)
        infinite;
}
#loftloader-wrapper.pl-imgrotating.ease-back.threed-y #loader {
    -webkit-animation: imgRotate3dYEase 4s cubic-bezier(0.07, 0.29, 0.63, 1.55)
        infinite;
    animation: imgRotate3dYEase 4s cubic-bezier(0.07, 0.29, 0.63, 1.55) infinite;
}
#loftloader-wrapper.pl-imgrotating.ease-back.threed-x #loader {
    -webkit-animation: imgRotate3dXEase 4s cubic-bezier(0.07, 0.29, 0.63, 1.55)
        infinite;
    animation: imgRotate3dXEase 4s cubic-bezier(0.07, 0.29, 0.63, 1.55) infinite;
}

/* ==========================================================================
   Loading - Bouncing Custom Image
   ========================================================================== */
#loftloader-wrapper.pl-imgbouncing #loader {
    width: auto;
    height: auto;
}
#loftloader-wrapper.pl-imgbouncing #loader img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
#loftloader-wrapper.pl-imgbouncing #loader img {
    -webkit-animation: imgBounce 1s ease-in-out infinite;
    animation: imgBounce 1s ease-in-out infinite;
}
#loftloader-wrapper.pl-imgbouncing #loader:after {
    position: absolute;
    bottom: -5px;
    left: 0;
    display: block;
    width: 100%;
    height: 15px;
    background: #000;
    border-radius: 50%;
    opacity: 0.1;
    -webkit-animation: imgShadow 1s ease-in-out infinite;
    animation: imgShadow 1s ease-in-out infinite;
    content: "";
}
#loftloader-wrapper.pl-imgbouncing.rolling #loader img {
    -webkit-animation: imgBounceRoll 4s ease-in-out infinite;
    animation: imgBounceRoll 4s ease-in-out infinite;
}
#loftloader-wrapper.pl-imgbouncing.rolling #loader:after {
    -webkit-animation: imgShadowRoll 4s ease-in-out infinite;
    animation: imgShadowRoll 4s ease-in-out infinite;
}

/* ==========================================================================
   Loading - Crossing Circles
   ========================================================================== */
#loftloader-wrapper.pl-crossing.lighten #loader span:before,
#loftloader-wrapper.pl-crossing.lighten #loader span:after {
    mix-blend-mode: lighten;
}
#loftloader-wrapper.pl-crossing.darken #loader span:before,
#loftloader-wrapper.pl-crossing.darken #loader span:after {
    mix-blend-mode: darken;
}
#loftloader-wrapper.pl-crossing.none #loader span:before,
#loftloader-wrapper.pl-crossing.none #loader span:after {
    opacity: 0.8;
}
#loftloader-wrapper.pl-crossing #loader span {
    display: block;
    width: 300px;
    height: 60px;
    background: transparent;
}
#loftloader-wrapper.pl-crossing #loader span:before,
#loftloader-wrapper.pl-crossing #loader span:after {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 50px;
    margin-top: 5px;
    border-radius: 50%;
    opacity: 1;
    content: "";
}
#loftloader-wrapper.pl-crossing #loader span:before {
    background: cyan;
    -webkit-animation: crossingLeft 2s ease infinite;
    animation: crossingLeft 2s ease infinite;
}
#loftloader-wrapper.pl-crossing #loader span:after {
    background: red;
    -webkit-animation: crossingRight 2s ease infinite;
    animation: crossingRight 2s ease infinite;
}

/* ==========================================================================
   Loading - Ducks
   ========================================================================== */
#loftloader-wrapper.pl-ducks #loader {
    width: 320px;
    height: 40px;
    overflow: hidden;
}
#loftloader-wrapper.pl-ducks #loader span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 40px;
    background: transparent;
    -webkit-animation: ducks 6s linear infinite;
    animation: ducks 6s linear infinite;
    color: gold;
}
#loftloader-wrapper.pl-ducks #loader span:before,
#loftloader-wrapper.pl-ducks #loader span:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 40px;
    height: 20px;
    background: currentColor;
    content: "";
    box-shadow: -320px 0 0 currentColor, -240px 0 0 currentColor,
        -160px 0 0 currentColor, -80px 0 0 currentColor, 80px 0 0 currentColor,
        160px 0 0 currentColor, 240px 0 0 currentColor, 320px 0 0 currentColor;
}
#loftloader-wrapper.pl-ducks #loader span:before {
    top: 5px;
    left: 14px;
    width: 30px;
    height: 15px;
    border-top-left-radius: 100px;
    border-top-right-radius: 100px;
    -webkit-animation: duckHead 0.9s ease infinite;
    animation: duckHead 0.9s ease infinite;
}
#loftloader-wrapper.pl-ducks #loader span:after {
    top: 20px;
    left: 0;
    border-bottom-left-radius: 100px;
    border-bottom-right-radius: 100px;
}

/* ==========================================================================
   Loading - Rainbow
   ========================================================================== */
#loftloader-wrapper.pl-rainbow #loader {
    width: 200px;
    height: 100px;
    overflow: hidden;
}
#loftloader-wrapper.pl-rainbow #loader span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 200px;
    height: 100px;
    overflow: hidden;
    box-sizing: border-box;
    transform-origin: 50% 100%;
    -webkit-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotate(-180deg);
    -webkit-animation: rainbow 3s linear infinite;
    animation: rainbow 3s linear infinite;
}
#loftloader-wrapper.pl-rainbow #loader span:before {
    position: absolute;
    top: 30px;
    left: 30px;
    display: block;
    width: 140px;
    height: 140px;
    background: transparent;
    border-radius: 50%;
    box-shadow: 0 0 0 10px red, 0 0 0 20px gold, 0 0 0 30px cyan;
    content: "";
}

/* ==========================================================================
   Loading - Circle Filling
   ========================================================================== */
#loftloader-wrapper.pl-circlefilling #loader {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px;
}
#loftloader-wrapper.pl-circlefilling #loader:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: currentColor;
    content: "";
    opacity: 0.1;
}
#loftloader-wrapper.pl-circlefilling #loader span {
    display: block;
    width: 100px;
    height: 100px;
    background: currentColor;
    transform-origin: 50% 100%;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-animation: circlefill 3s linear infinite;
    animation: circlefill 3s linear infinite;
}

/* ==========================================================================
   Loading - Water Filling
   ========================================================================== */
#loftloader-wrapper.pl-waterfilling #loader {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}
#loftloader-wrapper.pl-waterfilling #loader:before {
    display: block;
    width: 100px;
    height: 100px;
    background: currentColor;
    transform-origin: 50% 0%;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-animation: circlefill 10s linear infinite;
    animation: circlefill 10s linear infinite;
    content: "";
}
#loftloader-wrapper.pl-waterfilling #loader:after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 10px;
    height: 10px;
    background: #fff;
    border-radius: 50%;
    content: "";
    box-shadow: -17px -25px 0 -4px #fff, 20px -38px 0 -2px #fff,
        -36px 36px 0 -3px #fff, 10px 35px 0 -2px rgba(255, 255, 255, 0.8),
        0 -100px 0 0 #fff, -17px -125px 0 -4px #fff, 20px -138px 0 -2px #fff,
        -36px -64px 0 -3px #fff, 10px -65px 0 -2px rgba(255, 255, 255, 0.8);
    -webkit-animation: bubbles 1s linear infinite;
    animation: bubbles 1s linear infinite;
}
#loftloader-wrapper.pl-waterfilling #loader span {
    display: block;
    width: 100px;
    height: 100px;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    -webkit-animation: waterupfill 10s linear infinite;
    animation: waterupfill 10s linear infinite;
}
#loftloader-wrapper.pl-waterfilling #loader span:after {
    position: absolute;
    top: 0;
    left: -65px;
    display: block;
    width: 130px;
    height: 130px;
    background: transparent;
    border-radius: 50%;
    box-shadow: 78px -83px 0 -16px currentColor, 0 -70px 0 -17px currentColor,
        -78px -83px 0 -16px currentColor;
    -webkit-animation: waterup 2s ease-in-out infinite;
    animation: waterup 2s ease-in-out infinite;
    content: "";
}

/* ==========================================================================
   Loading - Crystal
   ========================================================================== */
#loftloader-wrapper.pl-crystal #loader {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 100px;
    -webkit-animation: crystal 5s linear infinite;
    animation: crystal 5s linear infinite;
}
#loftloader-wrapper.pl-crystal #loader span {
    display: block;
    width: 70px;
    height: 70px;
    margin: 15px auto 0;
    border-radius: 50%;
    background: transparent;
    box-shadow: 0 -15px 0 0 rgba(36, 138, 204, 0.5),
        15px -15px 0 0 rgba(36, 138, 204, 0.5),
        15px 0 0 0 rgba(36, 138, 204, 0.5),
        15px 15px 0 0 rgba(36, 138, 204, 0.5),
        0 15px 0 0 rgba(36, 138, 204, 0.5),
        -15px 15px 0 0 rgba(36, 138, 204, 0.5),
        -15px 0 0 0 rgba(36, 138, 204, 0.5),
        -15px -15px 0 0 rgba(36, 138, 204, 0.5);
}

/* ==========================================================================
   Loading - Petals
   ========================================================================== */
#loftloader-wrapper.pl-petals #loader {
    width: 100px;
    height: 100px;
}
#loftloader-wrapper.pl-petals #loader span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: transparent;
    box-shadow: 0 -25px 0 -15px transparent, 17.5px -17.5px 0 -15px transparent,
        25px 0 0 -15px transparent, 17.5px 17.5px 0 -15px transparent,
        0 25px 0 -15px transparent, -17.5px 17.5px 0 -15px transparent,
        -25px 0 0 -15px transparent, -17.5px -17.5px 0 -15px transparent;
    -webkit-animation: petals 5s linear infinite;
    animation: petals 5s linear infinite;
}

/* ==========================================================================
   Loading - Beating
   ========================================================================== */
#loftloader-wrapper.pl-beating #loader {
    width: 60px;
    height: 60px;
}
#loftloader-wrapper.pl-beating #loader span,
#loftloader-wrapper.pl-beating #loader:before {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 50px;
    opacity: 0;
}
#loftloader-wrapper.pl-beating #loader span {
    -webkit-animation: beat 1.5s linear infinite;
    animation: beat 1.5s linear infinite;
}
#loftloader-wrapper.pl-beating #loader:before {
    content: "";
    -webkit-animation: beat 1.5s linear infinite 1s;
    animation: beat 1.5s linear infinite 1s;
}

/* ==========================================================================
   Loading - Fading Custom Image
   ========================================================================== */
#loftloader-wrapper.pl-imgfading #loader {
    width: auto;
    height: auto;
}
#loftloader-wrapper.pl-imgfading #loader img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
#loftloader-wrapper.pl-imgfading #loader img {
    -webkit-animation: imgFade 3s ease-in-out infinite;
    animation: imgFade 3s ease-in-out infinite;
}

/* ==========================================================================
   Loading - Incomplete Ring
   ========================================================================== */
#loftloader-wrapper.pl-incomplete-ring #loader {
    width: 80px;
    height: 80px;
}
#loftloader-wrapper.pl-incomplete-ring #loader span {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 80px;
    height: 80px;
    background: none;
    transform-origin: 50% 50%;
    -webkit-animation: spin 2s ease infinite;
    animation: spin 2s ease infinite;
}
#loftloader-wrapper.pl-incomplete-ring #loader span:before,
#loftloader-wrapper.pl-incomplete-ring #loader span:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: inherit;
    border: 8px solid currentColor;
    border-radius: 50%;
    content: "";
    transform-origin: 50% 50%;
    box-sizing: border-box;
}
#loftloader-wrapper.pl-incomplete-ring #loader span:before {
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
}
#loftloader-wrapper.pl-incomplete-ring #loader span:after {
    border-bottom-color: transparent;
    border-left-color: transparent;
    -webkit-animation: spin 2s linear 0.5s infinite;
    animation: spin 2s linear 0.5s infinite;
}

/* ==========================================================================
   Loading - Disable Animations When Loop Once
   ========================================================================== */
#loftloader-wrapper.once.pl-rainbow #loader span,
#loftloader-wrapper.once.pl-circlefilling #loader span,
#loftloader-wrapper.once.pl-waterfilling #loader span,
#loftloader-wrapper.once.pl-petals #loader span {
    -webkit-animation: none;
    animation: none;
}
#loftloader-wrapper.once.pl-imgloading #loader .imgloading-container {
    -webkit-animation: none;
    animation: none;
}
#loftloader-wrapper.once.pl-waterfilling #loader:before {
    -webkit-animation: none;
    animation: none;
}

/* ==========================================================================
   Progress - Percentage
   ========================================================================== */
span.percentage {
    display: block;
    font-family: "Open Sans";
    font-size: 16px;
    font-weight: 100;
    letter-spacing: 0.1em;
    line-height: 1;
}
#loftloader-wrapper:not(.pl-none) #loader + span.percentage:not(.middle) {
    margin-top: 24px;
}
#loftloader-wrapper:not(.pl-none) span.percentage.middle {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: 0;
}
#loftloader-wrapper:not(.pl-none)
    .with-percentage
    span.percentage:not(.middle) {
    margin-bottom: -18px;
}
span.percentage.front {
    z-index: 1003;
}

/* ==========================================================================
   Progress - Bar
   ========================================================================== */
span.bar {
    position: relative;
    z-index: 1000;
    display: block;
    width: 100vw;
    height: 4px;
    margin: 0 auto;
    color: #248acc;
}
@media screen and (max-width: 500px) {
    span.bar {
        min-width: 220px;
    }
}
#loftloader-wrapper:not(.pl-none) #loader + span.bar {
    margin-top: 50px;
}
#loftloader-wrapper .loader-message ~ span.bar {
    margin-top: 24px;
}
span.bar:before,
span.bar span.load {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: currentColor;
}
span.bar:before {
    content: "";
    opacity: 0.1;
    will-change: transform;
}
span.bar span.load {
    transform-origin: 0% 0%;
}
span.bar.top,
span.bar.bottom {
    position: fixed;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    margin-top: 0;
}
span.bar.top {
    top: 0;
}
span.bar.bottom {
    bottom: 0;
}
span.bar span.load-count {
    position: absolute;
    bottom: -5px;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    font-size: 16px;
    font-weight: 100;
    letter-spacing: 0.1em;
    line-height: 1;
    color: currentColor;
}
span.bar.bottom span.load-count {
    top: -5px;
    bottom: auto;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
}

/* ==========================================================================
   Message
   ========================================================================== */
.loader-message {
    width: 100vw;
    padding: 0 20px;
    margin: 0 auto;
    font-family: "Open Sans";
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 0.1em;
    line-height: 1.5;
    word-wrap: break-word;
}
#loftloader-wrapper:not(.pl-none) .loader-inner > .loader-message:first-child {
    margin-bottom: 24px;
}
#loftloader-wrapper * + .loader-message {
    margin-top: 24px;
}
#loftloader-wrapper.pl-none #loader + .loader-message {
    margin-top: 0;
}
#loftloader-wrapper.pl-none .with-percentage + .loader-message {
    margin-top: 6px;
}

/* ==========================================================================
   Close Button
   ========================================================================== */
.loader-close-button {
    position: fixed;
    right: 10px;
    top: 10px;
    z-index: 99999;
    box-sizing: border-box;
    width: auto;
    min-width: 35px;
    height: 35px;
    padding: 5px 30px 5px 5px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.3);
    color: #fff;
    font-size: 12px;
    line-height: 25px;
    cursor: pointer;
}
.loader-close-button:hover {
    background: rgba(0, 0, 0, 0.7);
}
.loader-close-button:before,
.loader-close-button:after {
    position: absolute;
    top: 16px;
    right: 9px;
    display: block;
    width: 18px;
    height: 2px;
    transform-origin: 50% 50%;
    content: "";
    background: #fff;
}
.loader-close-button:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.loader-close-button:after {
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}
.loader-close-button .screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    overflow: hidden;
    word-wrap: normal !important;
}
.loader-close-button .close-des {
    padding: 0 5px;
    font-size: 12px;
}
